package com.hit.eduService.controller;


import com.hit.commonUtils.R;
import com.hit.eduService.entity.subject.OneSubject;
import com.hit.eduService.service.EduSubjectService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import org.springframework.web.multipart.MultipartFile;

import java.util.ArrayList;
import java.util.List;

/**
 * <p>
 * 课程科目 前端控制器
 * </p>
 *
 * @author testjava
 * @since 2022-11-03
 */
@CrossOrigin
@RestController
@RequestMapping("/eduService/edu-subject")
public class EduSubjectController {

    @Autowired
    private EduSubjectService eduSubjectService;

    //添加课程分类,获取上传的xlsx文件，读出文件中的内容保存到eduSubject表中
    @PostMapping("addSubject")
    public R addSubject(MultipartFile file){
        eduSubjectService.saveSubject(file,eduSubjectService);
        return R.ok();
    }

    //获取树形的课程分类列表
    //要按照前端要求的格式返回数据表中的课程分类内容
    //要求的格式是：
    /*       [ {
                id: 1,
                label: 'Level one 1',
                children: [{
                            id: 4,
                            label: 'Level two 1-1',
                            children: [{
                                        id: 9,
                                        label: 'Level three 1-1-1'
                                        }, {
                                        id: 10,
                                        label: 'Level three 1-1-2'
                                    }]
                         }]
            }]
    */
    //所以需要返回这种格式的数据，由于我们的课程管理只有两级分类，所以每级分类构造对应的entity类，构建出这种格式
    @GetMapping("getAllSubject")
    public R getSubject(){
        List<OneSubject> list=eduSubjectService.getAllOneTwoSubject();
        return R.ok().data("list",list);
    }
}

